
package com.ruoyi.business.domain;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.ruoyi.user.domain.ServiceEvaluate;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 店铺对象 shop
 *
 * @author zsq
 * @date 2024-09-11
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Shop extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId
    private Long id;

    /**
     * 店名
     */
    @Excel(name = "店名")
    private String name;

    /**
     * 经营区域
     */
    @Excel(name = "经营区域")
    private String operatingArea;

    /**
     * 注册时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "注册时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date regTime;

    /** 开始营业时间 */

    @Excel(name = "开始营业时间", width = 30, dateFormat = "yyyy-MM-dd")
    private String startTime;

    /** 停止营业时间 */

    @Excel(name = "停止营业时间", width = 30, dateFormat = "yyyy-MM-dd")
    private String endTime;


    /**
     * 详细地址
     */
    @Excel(name = "详细地址")
    private String address;

    /**
     * 经度
     */
    @Excel(name = "经度")
    private String longitude;

    /**
     * 纬度
     */
    @Excel(name = "纬度")
    private String latitude;

    /**
     * 商家介绍
     */
    @Excel(name = "商家介绍")
    private String description;

    /**
     * 门店照片【缩略图】
     */
    @Excel(name = "门店照片【缩略图】")
    private String photo;

    /**
     * 商家评分，默认值0
     */
    @Excel(name = "商家评分，默认值0")
    private Long rate;

    /**
     * 经营状态（0正常、1放假）
     */
    @Excel(name = "经营状态", readConverterExp = "0=正常、1放假")
    private Long status;

    /**
     * 删除状态0是正常，1是删除
     */
    @Excel(name = "删除状态0是正常，1是删除")
    @TableLogic
    private Long deleted;

    //引入服务类型详情表
    private List<ServiceDetails> serviceDetails;

    //引入店铺图片表
    private List<ShopImgs> shopImgs;

    //引入服务评价表
    private List<ServiceEvaluate> serviceEvaluates;

    /**
     * 审核状态(0待审核、1系统已审核、2已审核、3已拒绝)
     */
    @Excel(name = "审核状态(0待审核、1系统已审核、2已审核、3已拒绝)")
    private Long auditStatusId;


}

